package com.jiangjiesheng.mq.demo1;

import com.jiangjiesheng.mq.Const;
import org.apache.activemq.ActiveMQConnectionFactory;

import javax.jms.*;

/**
 * Description：第一步 queue发送
 * Author：江节胜
 * Email：dev@jiangjiesheng.com
 * Date: 2018/10/11
 */
public class Queue1Sender {
    public static void main(String[] args) {
        try {
            testMQProducerQueue();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    public static void testMQProducerQueue() throws Exception{
        //1、创建工厂连接对象，需要制定ip和端口号
        ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://"+ Const.ip+":61616");
        //2、使用连接工厂创建一个连接对象
        Connection connection = connectionFactory.createConnection();
        //3、开启连接
        connection.start();
        //4、使用连接对象创建会话（session）对象
        Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
        //5、使用会话对象创建目标对象，包含queue和topic（一对一和一对多）
        Queue queue = session.createQueue("test-queue");
        //6、使用会话对象创建生产者对象
        MessageProducer producer = session.createProducer(queue);
        //7、使用会话对象创建一个消息对象
        TextMessage textMessage = session.createTextMessage("hello!test-queue");
        //8、发送消息
        producer.send(textMessage);
        //9、关闭资源
        producer.close();
        session.close();
        connection.close();
    }
}
